package com.yiyahui.project.erp.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.yiyahui.framework.aspectj.lang.annotation.Excel;
import com.yiyahui.framework.web.domain.BaseEntity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 项目维度统计对象 yiya_statistics_item
 * 
 * @author yiyahui
 * @date 2020-09-18
 */

@ApiModel(value="项目维度统计对象")
public class YiyaStatisticsItem extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 主单结账记录流水id */
    @ApiModelProperty(value="主单结账记录流水id")
    @Excel(name = "主单结账记录流水id")
    private Long mainClosingEntriesId;

    /** 开单项目id */
    @ApiModelProperty(value="开单项目id")
    @Excel(name = "开单项目id")
    private Long itemBillingId;

    /** 市场建档id */
    @ApiModelProperty(value="市场建档id")
    @Excel(name = "市场建档id")
    private Long marketReservationId;

    /** 患者id */
    @ApiModelProperty(value="患者id")
    @Excel(name = "患者id")
    private Long clinicPersonId;

    /** 患者姓名 */
    @ApiModelProperty(value="患者姓名")
    @Excel(name = "患者姓名")
    private String name;

    /** 患者手机号1 */
    @ApiModelProperty(value="患者手机号1")
    @Excel(name = "患者手机号1")
    private String phoneNumber1;

    /** 门店 */
    @ApiModelProperty(value="门店")
    @Excel(name = "门店")
    private String clinic;

    /** 项目所属医生 */
    @ApiModelProperty(value="项目所属医生")
    @Excel(name = "项目所属医生")
    private String doctor;

    /** 首开单tc */
    @ApiModelProperty(value="首开单tc")
    @Excel(name = "首开单tc")
    private String tc;

    /** 开单人 */
    @ApiModelProperty(value="开单人")
    @Excel(name = "开单人")
    private String billingPerson;

    /** 门诊项目关联id */
    @ApiModelProperty(value="门诊项目关联id")
    @Excel(name = "门诊项目关联id")
    private Long itemId;

    /** 项目名称 */
    @ApiModelProperty(value="项目名称")
    @Excel(name = "项目名称")
    private String itemName;

    /** 一级项目 */
    @ApiModelProperty(value="一级项目")
    @Excel(name = "一级项目")
    private String firstProject;

    /** 项目类型 */
    @ApiModelProperty(value="项目类型")
    @Excel(name = "项目类型")
    private String itemType;

    /** 单价 */
    @ApiModelProperty(value="单价")
    @Excel(name = "单价")
    private BigDecimal unitPrice;

    /** 单位 */
    @ApiModelProperty(value="单位")
    @Excel(name = "单位")
    private String unit;

    /** 数量 */
    @ApiModelProperty(value="数量")
    @Excel(name = "数量")
    private Long count;

    /** 项目支付金额 */
    @ApiModelProperty(value="项目支付金额")
    @Excel(name = "项目支付金额")
    private BigDecimal thisPay;

    /** 市场归属人 */
    @ApiModelProperty(value="市场归属人")
    @Excel(name = "市场归属人")
    private String marketAffiliationPerson;

    /** 结账时间 */
    @ApiModelProperty(value="结账时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结账时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date closingTime;

    /** 扎帐时间 */
    @ApiModelProperty(value="扎帐时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "扎帐时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date plungeTime;

    /** 备注 */
    @ApiModelProperty(value="备注")
    @Excel(name = "备注")
    private String remarks;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setMainClosingEntriesId(Long mainClosingEntriesId) 
    {
        this.mainClosingEntriesId = mainClosingEntriesId;
    }

    public Long getMainClosingEntriesId() 
    {
        return mainClosingEntriesId;
    }
    public void setItemBillingId(Long itemBillingId) 
    {
        this.itemBillingId = itemBillingId;
    }

    public Long getItemBillingId() 
    {
        return itemBillingId;
    }
    public void setMarketReservationId(Long marketReservationId) 
    {
        this.marketReservationId = marketReservationId;
    }

    public Long getMarketReservationId() 
    {
        return marketReservationId;
    }
    public void setClinicPersonId(Long clinicPersonId) 
    {
        this.clinicPersonId = clinicPersonId;
    }

    public Long getClinicPersonId() 
    {
        return clinicPersonId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setPhoneNumber1(String phoneNumber1) 
    {
        this.phoneNumber1 = phoneNumber1;
    }

    public String getPhoneNumber1() 
    {
        return phoneNumber1;
    }
    public void setClinic(String clinic) 
    {
        this.clinic = clinic;
    }

    public String getClinic() 
    {
        return clinic;
    }
    public void setDoctor(String doctor) 
    {
        this.doctor = doctor;
    }

    public String getDoctor() 
    {
        return doctor;
    }
    public void setTc(String tc) 
    {
        this.tc = tc;
    }

    public String getTc() 
    {
        return tc;
    }
    public void setBillingPerson(String billingPerson) 
    {
        this.billingPerson = billingPerson;
    }

    public String getBillingPerson() 
    {
        return billingPerson;
    }
    public void setItemId(Long itemId) 
    {
        this.itemId = itemId;
    }

    public Long getItemId() 
    {
        return itemId;
    }
    public void setItemName(String itemName) 
    {
        this.itemName = itemName;
    }

    public String getItemName() 
    {
        return itemName;
    }
    public void setFirstProject(String firstProject) 
    {
        this.firstProject = firstProject;
    }

    public String getFirstProject() 
    {
        return firstProject;
    }
    public void setItemType(String itemType) 
    {
        this.itemType = itemType;
    }

    public String getItemType() 
    {
        return itemType;
    }

    public BigDecimal getUnitPrice() {
        return unitPrice;
    }

    public void setUnitPrice(BigDecimal unitPrice) {
        this.unitPrice = unitPrice;
    }

    public void setUnit(String unit)
    {
        this.unit = unit;
    }

    public String getUnit() 
    {
        return unit;
    }
    public void setCount(Long count) 
    {
        this.count = count;
    }

    public Long getCount() 
    {
        return count;
    }

    public BigDecimal getThisPay() {
        return thisPay;
    }

    public void setThisPay(BigDecimal thisPay) {
        this.thisPay = thisPay;
    }

    public void setMarketAffiliationPerson(String marketAffiliationPerson)
    {
        this.marketAffiliationPerson = marketAffiliationPerson;
    }

    public String getMarketAffiliationPerson() 
    {
        return marketAffiliationPerson;
    }
    public void setClosingTime(Date closingTime) 
    {
        this.closingTime = closingTime;
    }

    public Date getClosingTime() 
    {
        return closingTime;
    }
    public void setPlungeTime(Date plungeTime) 
    {
        this.plungeTime = plungeTime;
    }

    public Date getPlungeTime() 
    {
        return plungeTime;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("mainClosingEntriesId", getMainClosingEntriesId())
            .append("itemBillingId", getItemBillingId())
            .append("marketReservationId", getMarketReservationId())
            .append("clinicPersonId", getClinicPersonId())
            .append("name", getName())
            .append("phoneNumber1", getPhoneNumber1())
            .append("clinic", getClinic())
            .append("doctor", getDoctor())
            .append("tc", getTc())
            .append("billingPerson", getBillingPerson())
            .append("itemId", getItemId())
            .append("itemName", getItemName())
            .append("firstProject", getFirstProject())
            .append("itemType", getItemType())
            .append("unitPrice", getUnitPrice())
            .append("unit", getUnit())
            .append("count", getCount())
            .append("thisPay", getThisPay())
            .append("marketAffiliationPerson", getMarketAffiliationPerson())
            .append("closingTime", getClosingTime())
            .append("plungeTime", getPlungeTime())
            .append("remarks", getRemarks())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .toString();
    }
}
